1. Technical Field
This disclosure relates generally to network communication. More particularly, certain embodiments are directed to techniques for determining a state of data traffic congestion in a network.
2. Background Art
Data centers and other types of networks continue to trend toward increasingly large scale, complexity and speed. Accordingly, operation of such networks increasingly depends upon individual network agents exhibiting “neighborly” behavior in the use of network resources. For overall network efficiency, it is desirable that individual network agents be aggressive enough in utilizing network resources that they achieve their own ends, while at the same time sufficiently limiting their respective use of network resources as an accommodation for one another's respective ends.
In aid of overall network efficiency, network devices may implement one or more congestion detection mechanism. One type of congestion detection mechanism is delay sensing. In delay sensing, packets are sent from a sending device to a destination device, where the packets received are then acknowledged back to the sender. The sender may then estimate network congestion based on the delay in getting back acknowledgements for packets sent.
Another congestion detection mechanism is congestion notification, such as the explicit congestion notification (ECN) RFC 3168 (2001) extension to the Internet Protocol (IP) and to the Transmission Control Protocol (TCP). In ECN, packets are sent to a destination network device by a source network device, where one or more confirmations of successful packet transmission are sent back to the source network device. The expected time between a source device sending a packet to a time of the source device receiving a corresponding confirmation of packet transmission is referred to as a round-trip time (RTT). In ECN, a confirmation of a packet's successful transmission may include information which explicitly specifies that data traffic congestion was experienced as that packet was being sent in the network.
Current ECN techniques variously send a group of packets and await one or more acknowledgment messages for all packets of the group. Subsequently, these ECN techniques variously determine from the received acknowledge messages a size of a next group of packets to send on the network.
As the size, speed and complexity of networks continues to grow, such networks become increasingly sensitive to the effects of network data traffic congestion.